<div class="service-dependencies">
  <loader [display]="isLoading" [size]="'medium'" [relative]="true"></loader>
  <select-directives *ngIf="!isDependent || isEditable" (onAddClick)="onAddDirectives($event)" [updateDirectives]="getActualDirectiveValue()">
  </select-directives>
  <div *ngIf="isDependent && !isEditable" class="checkbox-label-mark-as-dependent">
    <label class="i-sdc-form-label">Directive: {{getActualDirectiveValue()}}</label>
    <span class="sprite-new delete-btn delete-icon"
          (click)="onRemoveDirective()" data-tests-id="delete-input-button" *ngIf="!readonly">
    </span>
    <svg-icon-label name="edit-file-o" size="small" class="directive-edit-icon" data-tests-id="directive-edit-icon" 
          (click)="onEditDirectives()" *ngIf="!readonly">
    </svg-icon-label>
  </div>

  <div *ngIf="isDependent">
    <div class="w-sdc-designer-sidebar-section">
      <sdc-accordion [title]="'Node Filter Capabilities'" [arrow-direction]="'right'" [open]="true">
        <div class="i-sdc-designer-sidebar-section-content-node-filter-section">

          <div class="i-sdc-designer-sidebar-section-content-node-filter"
               [ngClass]="{'hand': !readonly}"
               *ngFor="let capability of constraintCapabilities; let i = index">
            <div class="filter-details" [ngClass]="{'readonly': readonly}">
              <div class="filter-desc" (click)="!readonly && onSelectNodeFilterCapability(capabilities, i)"
                   tooltips
                   tooltip="{{constraintCapabilityLabels[i]}}">
                   {{constraintCapabilityLabels[i]}}
              </div>
              <span *ngIf="!readonly" class="sprite-new delete-btn delete-icon"
                    (click)="openDeleteModal(capabilities, i)"
                    data-tests-id="delete-input-button"></span>
            </div>
          </div>

          <div class="w-sdc-designer-sidebar-section-node-filter-footer">
            <button
                class="w-sdc-designer-sidebar-section-node-filter-footer-action add-rule-btn tlv-btn blue"
                data-tests-id="add-rule-button"
                (click)="onAddNodeFilterCapabilities()"
                [disabled]="readonly">
              {{'DIRECTIVES_AND_NODE_FILTER_ADD_NODE_FILTER' | translate}}
            </button>
          </div>
        </div>
      </sdc-accordion>

      <sdc-accordion [title]="'Node Filter Properties'" [arrow-direction]="'right'" [open]="true">
        <div class="i-sdc-designer-sidebar-section-content-node-filter-section">

          <div class="i-sdc-designer-sidebar-section-content-node-filter"
               [ngClass]="{'hand': !readonly}"
               *ngFor="let property of constraintProperties; let i = index">
            <div class="filter-details" [ngClass]="{'readonly': readonly}">
              <div class="filter-desc" (click)="!readonly && onSelectNodeFilter(properties, i)"
                   tooltips
                   tooltip="{{constraintPropertyLabels[i]}}">
                   {{constraintPropertyLabels[i]}}
              </div>
              <span *ngIf="!readonly" class="sprite-new delete-btn delete-icon"
                    (click)="openDeleteModal(properties, i)"
                    data-tests-id="delete-input-button"></span>
            </div>
          </div>

          <div class="w-sdc-designer-sidebar-section-node-filter-footer">
            <button
                class="w-sdc-designer-sidebar-section-node-filter-footer-action add-rule-btn tlv-btn blue"
                data-tests-id="add-rule-button"
                (click)="onAddNodeFilter()"
                [disabled]="readonly">
              {{'DIRECTIVES_AND_NODE_FILTER_ADD_NODE_FILTER' | translate}}
            </button>
          </div>
        </div>
      </sdc-accordion>
    </div>
  </div>
</div>
